1. Field of the Invention
The present invention relates to telecommunications. More particularly, the present invention relates to the passing of variable length packets via fixed length segments.
2. State of the Art
The first commercial digital voice communications system was installed in 1962 in Chicago, Ill. The system was called xe2x80x9cT1xe2x80x9d and was based on the time division multiplexing (TDM) of twenty-four telephone calls on two twisted wire pairs. The digital bit rate of the T1 system was 1.544 Mbit/sec (xc2x1200 bps), which was, in the nineteen sixties, about the highest data rate that could be supported by a twisted wire pair for a distance of approximately one mile. The cables carrying the T1 signals were buried underground and were accessible via manholes, which were, at that time in Chicago, spaced approximately one mile (actually, 6000 ft.) apart. Thus, analog amplifiers with digital repeaters were conveniently located at intervals of approximately one mile. The T1 system is still widely used today and forms a basic building block for higher capacity communication systems including T3 which transports twenty-eight T1 signals. In the early 1970s, another technology was deployed to support data networks. The technology was called xe2x80x9cpacket switchingxe2x80x9d. Unlike the T1 and T3 networks, packet switching was designed for data communications only. In packet switching, a xe2x80x9cpacketxe2x80x9d of data includes a header, a payload, and a cyclic redundancy check (CRC). The header includes addressing information as well as an indication of the length of the payload. The payload contains the actual data which is being transmitted over the network. The CRC is used for error detection. The receiver of the packet performs a calculation with the bits in the packet and compares the result of the calculation to the CRC value. If the CRC value is not the same as the result of the calculation, it means that the packet was damaged in transit. According to the packet switching scheme, the damaged packet is discarded and the receiver sends a message to the transmitter to resend the packet. One popular packet switching scheme for wide area networks (WANs), known as X.25, utilizes a packet which has a fixed payload of 128 octets. Other packet switching schemes allow variable length packets up to 64,000 octets. Frame Relay is an example of a WAN packet switching scheme which utilizes variable sized packets and Ethernet is an example of a local area network (LAN) packet switching scheme which utilizes variable sized packets.
Concurrent with the development of packet switching, several groups around the world began to consider standards for the interconnection of computer networks and coined the term xe2x80x9cinternetworkingxe2x80x9d. The leading pioneers in internetworking were the founders of ARPANET (the Advanced Research Projects Network). ARPA, a U.S. Department of Defense organization, developed and implemented the transmission control protocol (TCP) and the internet protocol (IP). The TCP/IP code was dedicated to the public domain and was rapidly adopted by universities, private companies, and research centers around the world. An important feature of IP is that it allows fragmentation operations, i.e. the segmentation of packets into smaller units. This is essential to allow networks which utilize large packets to be coupled to networks which utilize smaller packets. Today, TCP/IP is the foundation of the Internet. It is used for email, file transfer, and for browsing the Worldwide Web. Moreover, the popularity of TCP/IP is so great that it is now being used for voice and video as well as data transmission.
Perhaps the most awaited, and now fastest growing technology in the field of telecommunications is known as Asynchronous Transfer Mode (ATM) technology. ATM was originally conceived as a carrier of integrated traffic, e.g. voice, data, and video. ATM utilizes fixed length packets (called xe2x80x9ccellsxe2x80x9d) of 53 octets (5 octets header and 48 octets payload). ATM may be implemented in either a LAN or a WAN. For ideal data transfer, ATM is used end to end from the data source to the data receiver. In present practice, however, most of the data traffic over the ATM network (including TCP/IP traffic) originates and terminates via another type of network having packets much larger than the fixed length ATM cell. Thus, data packets entering the ATM network must be segmented into ATM cells. These cells must be reassembled into packets as the data exits the ATM network. These processes, known as SAR (segmentation and reassembly) are performed in ATM switches at the edges of the ATM network.
Within the ATM technology, a commonly used interface specification for passing ATM cells between chips on a circuit board is the UTOPIA interface. The UTOPIA interface is specified in ATM Forum standard specification af_phyxe2x80x940039.000 (UTOPIA Level 2, Version 1, June 1995) which is hereby incorporated by reference herein in its entirety. The present UTOPIA standard defines an interface between a so-called PHY (physical) device and an ATM device for the transfer of fixed length ATM cells. According to the UTOPIA standard, the PHY device is responsible for performing cell-delineation (via the header error correction (HEC) code) and for (de)scrambling the cell payload of the ATM cells. The PHY device may also perform lower level framing functions, for example, SONET framing. The ATM device is responsible for higher level functions such as buffering and scheduling ATM cells and SAR.
One of the advantages of ATM technology is that it provides for quality of service (QOS), something which is not provided for by variable length packet switching schemes. When multiplexing variable length packets, a particularly long packet will cause a delay for all of the other packet streams. Due to the tremendous popularity of the Internet, it is desirable to provide methods and apparatus for transferring variable length IP packets in a fair and efficient manner.
It is therefore an object of the invention to provide methods and apparatus for the transfer of variable length packets.
It is also an object of the invention to provide an interface for the transfer of variable length packets which is fair in allowing multiple ports to receive a fair share of the total throughput.
It is another object of the invention to provide an interface for the transfer of variable length packets which maximizes throughput regardless of packet length.
It is still another object of the invention to provide an interface for the transfer of variable length packets which minimizes packet delay regardless of packet length.
It is yet another object of the invention to provide an interface for the transfer of variable length packets which is readily adapted to existing devices.
In accord with these objects which will be discussed in detail below, the interface according to the present invention uses a UTOPIA interface which is modified to add three additional signals: start of packet (SOP), end of packet (EOP), and most significant byte (MSB). According to the methods of the invention, packets are broken into segments of fixed, but programmable, length, e.g. 8 to 64 bytes. The start of a segment is marked by a pulse on the start of cell (SOC) signal line. The end of a segment is known because of the programmed fixed segment length. The start of a packet is marked by a pulse on the SOP signal line. The end of a packet is marked by a pulse on the EOP signal line. According to a presently preferred embodiment of the invention, bytes are transferred via a 16-bit bus. When a packet ends with a single byte on the bus, the MSB signal line is asserted to distinguish it from a packet which ends with two bytes on the bus, the last byte being a zero byte. The invention can be expanded to accommodate buses wider than 16-bits by making the EOP a multiple bit signal (e.g., two bits for a 32-bit wide bus).
The extra signals added to the standard UTOPIA interface by the invention are not involved in segment transfer. Segments are transferred in the same manner that ATM cells are transferred using standard UTOPIA technology. Rather, the extra signals are used by a PHY device to reconstruct packets which were transferred over the interface. Accordingly, a single interface according to the invention can be used to transfer both variable length packets and ATM cells. When transferring ATM cells, the additional signals are simply not used and the PHY device thereby treats the data as ATM cells rather than as segments. Moreover, since the SOC signal is independent from the SOP signal, packets can begin on any most significant byte of a segment and end on any byte of a segment. In other words, when a packet ends inside a segment, a new packet can begin inside the same segment.
According to the invention, the interface supports multiple PHY ports fairly by interleaving segments from different sources (or destined for different sinks) on an arbitrated basis such as a round-robin basis. Throughput is thereby allocated fairly and efficiently. It is not necessary to complete the transfer of a packet before transfer of another packet can begin. Delay is thereby reduced. This also allows the use of smaller buffers for packet traffic since packets will not be delayed beyond a predictable duration.
An apparatus according to the invention includes the modified UTOPIA interface described above (having three additional signal lines), one or more buffers, and logic for performing the method (segmenting and reassembling segments, arbitrating among ports, and asserting the signal lines at the appropriate times).
Additional objects and advantages of the invention will become apparent to those skilled in the art upon reference to the detailed description taken in conjunction with the provided figures.